/**
 * 
 */
package cn.rengy.tpa.wxmp.request;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;

import lombok.Getter;
import lombok.Setter;


/**
 * 微信request的对象属性
 */
@JacksonXmlRootElement(localName = "xml")
@JsonIgnoreProperties(ignoreUnknown = true)//忽略不存在的字段
@JsonInclude(Include.NON_NULL)
@Setter
@Getter
public class WechatRequest {
	
	@JacksonXmlProperty(localName = "ToUserName")
	private String toUserName;
	
	@JacksonXmlProperty(localName = "FromUserName")
	private String fromUserName;
	
	@JacksonXmlProperty(localName = "CreateTime")
	private String createTime;
	
	@JacksonXmlProperty(localName = "MsgType")
	private String msgType;
	
	@JacksonXmlProperty(localName = "Event")
	private String event;	
	
	@JacksonXmlProperty(localName = "EventKey")
	private String eventKey;
	
	@JacksonXmlProperty(localName = "MsgId")
	private String msgId;
	
	@JacksonXmlProperty(localName = "Content")
	private String content;
	
	@JacksonXmlProperty(localName = "Location_X")
	private String location_X;
	
	@JacksonXmlProperty(localName = "Location_Y")
	private String location_Y;
	
	@JacksonXmlProperty(localName = "Scale")
	private String scale;
	
	@JacksonXmlProperty(localName = "Label")
	private String label;
	
	@JacksonXmlProperty(localName = "Title")
	private String title;
	
	
	@JacksonXmlProperty(localName = "Description")
	private String description;
	
	@JacksonXmlProperty(localName = "Url")
	private String url;
	
	@JacksonXmlProperty(localName = "PicUrl")
	private String picUrl;
	
	@JacksonXmlProperty(localName = "MediaId")
	private String mediaId;
	
	@JacksonXmlProperty(localName = "Format")
	private String format;
	
	@JacksonXmlProperty(localName = "Status")
	private String status;
	
	@JacksonXmlProperty(localName = "Latitude")
	private String latitude;  //上报地理位置事件Latitude
	
	@JacksonXmlProperty(localName = "Longitude")
	private String longitude; //上报地理位置事件Longitude
	
	@JacksonXmlProperty(localName = "Precision")
	private String precision; //上报地理位置事件Precision
	
	@JacksonXmlProperty(localName = "Ticket")
	private String ticket;    //扫描带参数二维码事件Ticket
	
	@JacksonXmlProperty(localName = "ThumbMediaId")
	private String thumbMediaId; //视频消息 ThumbMediaId 视频消息缩略图的媒体id，可以调用多媒体文件下载接口拉取数据
	
	@JacksonXmlProperty(localName = "ScanCodeInfo")
	private ScanCodeInfo scanCodeInfo; //扫描信息
	
	@JacksonXmlProperty(localName = "SendPicsInfo")
	private SendPicsInfo sendPicsInfo; //发送的图片信息
	
	@JacksonXmlProperty(localName = "SendLocationInfo")
	private SendLocationInfo sendLocationInfo;   //发送的位置信息
	
	@JacksonXmlProperty(localName = "Recognition")
	private String recognition;
	
	
	
	
	
}
